#----------------------------------------
# VisualK-OS                             
#    Module: Synth Station Driver [v2.0] 
#    Author: Kevin Slaughter             
#----------------------------------------

"""
[Revision History]
    v2.0: Standardization, misc. optimizations.
    v1.0: Initial implementation.
"""



### Lib/Header import
from VKCC_Constants import *
import globals, serial

### Obj: Synth Station COMMS --- [Keyboard-related lighting]
class cSynthStation(object):
    ### [General]
    ID = "SynthStation"                 # Debug reference
    devPath = "/dev/vkosSynthStation"   # Device path [Linux]
    isAvailable = False                 # Status indicator
    isHandshook = False                 # ^      ^       ^
    isMuted = False                     # Device mute = Light off and bypass commands
    numLights = 0		                # Zero-based (Current cfg: [Device dismantled])
    serComms = serial                   # Serial connection to device
    
    ### Device-specific
    colors = \
        [VKC_BLUE, VKC_PURPLE, VKC_RED, VKC_GREEN]   # Default shelf colors
    curProg = 0			  # Active program



    ### [Functions]
    ### setProgram(): Set active program index.
    def setProgram(self, iProg):
        self.curProg = iProg
        return
